100总结
为什么通过以下命令可以初始化 egg.js
项目
npm init egg --type=simple
这个有些像 "第三周 commander使用 -> commander
厉害的功能 -> program.command()
的第二个参数:描述参数" 中讲到的功能。
这里实际是下载并执行 create-egg
脚手架,后面的参数将传入 create-egg
脚手架
真实域名和ip端口号的映射修改
- 修改host文件
- 使用 switchHosts 软件,管理host文件
MongoDB 启动
mongod --dbpath=/Users/jolly/data/db
mongodb
和 mongoose
两者都可以帮助 Node.js
进行数据库操作,但 mongoose
是在 mongodb
基础上,再次封装的。
ANSI
ansi-escapes
全称 ANSI-escape-code
ANSI转义序列
ANSI escape sequences(ANSI转义序列)在终端中通过转义字符实现一些特殊操作的规范。特殊操作:光标上移、下移、左移,字体样式颜色改变等操作
ANSI 规则使用
console.log('\x1B[41m\x1B[4m%s\x1B[0m', 'your name:');
console.log('\x1B[2B%s', 'your name2:'); // 光标下移两行再输出
'\x1B'
\x
表示16进制1B
是固定写法
41
是在ANSI-escape-code
中 'Colors' 部分查到的代码。表示红色背景\x1B[0m
是将显示样式还原4m
表示下划线m
表示SGR
,设置显示属性,见ANSI-escape-code
中的Terminal output sequences
rxjs
响应式扩展库,实现异步。形式上跟 promise
相似
const { range } = rxjs;
const { map, filter } = rxjs.operators;
const pipe = range(1, 200).pipe(
filter(x => x % 2 === 1),
map(x => x + x)
);
pipe.subscribe(x => console.log(x));
可以将 pipe
返回给用户,让用户实现自己想要的逻辑。
知识点
Array
对象的find
方法- find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。
- find() 方法为数组中的每个元素都调用一次函数执行:
- 当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
- 如果没有符合条件的元素返回 undefined
- 在
async
函数的try {} catch{}
中,try
中await
中的报错,可以被catch
捕获。